
/* Universidad del Valle de Guatemala
 * Calculadora.java
 * Pablo Rodriguez, 12374
 * Julio Maldonado, 12377
 * Seccion 30, Algoritmos y Estructura de Datos
 * Fecha: 22/07/13
 * Clase que contiene el cuerpo y definicion de los metodos para agregar, obtener, y ver los elementos de la pila
 */

package hoja2;

import java.util.*;
public class Calculadora<E> implements Stack<E> {
    
Vector vector=new Vector(50, 50); // aqui se instacia la clase vector para poder realiza las funciones del stack

public void push(E item){ // metodo push sirve para introducir elementos a la pila, reibe  como parametro un elemento de tipo E y no devuelve nada.
    vector.add(item); 
   }

public E pop(){ // metodo pop sirve para retirar el ultimo elemento de la pila y almacenarlo en alguna variable, no recibe nada como parametros y devuelve el elemento que retiro.
    E x = (E) vector.lastElement();
    vector.remove(x);
    return x;  
   }
   
public E peek(){  // metodo peek sirve para saber cual es el ultimo elemento de la pila, no recibe ningun parametro y devuelve el ultimo elemento en la pila
    E x = (E) vector.lastElement();
    return x;
    }

public boolean empty(){ // este metodo revisa si hay o no elementos en la pila, no recibe ningun parametro y devuelve true si hay elementos o false si no
    boolean y;
    int x = vector.size();
    if (x==0){
        y=false;
    }
    else{
        y=true;
    }
    return y;
    }

public int size(){ // este metodo revisa cuantos elementos hay en la pila, no recibe ningun parametro y devuelve el numero de elementos dentro de la pila.
    int x = vector.size();
    return x;
}
    
}